package org.example.service;

import org.example.domain.BookingRecord;
import org.example.utils.ResponseUtil.ResponseResult;


public interface BookingRecordService {


    /**
     * 增加 疫苗预约记录
     */
    ResponseResult insertBookingRecord(BookingRecord record);


    /**
     * 修改 记录：根据疫苗预约记录的id
     */
    ResponseResult updateBookingRecordById(BookingRecord record);


    /**
     * 物理删除：根据疫苗预约记录表的br_id
     */
    ResponseResult deleteBookingRecordById(Integer id);



    /**
     * 根据预约记录表的br_id，查找唯一的对象
     */
    ResponseResult selectBookingRecordById(Integer id);


    /**
     * 根据用户的user_uid，查找多个预约记录
     */
    ResponseResult selectBookingRecordByUserId(Integer userId);


    /**
     * 根据 预约时间booking_time，进行查找
     */
    ResponseResult selectBookingRecordLikeBooking_time(String bookingDate);



    /**
     * 根据用户的账号userAccount，进行模糊查询
     */
    ResponseResult selectBookingRecordLikeUserAccount(String userAccount);


    /**
     * 根据用户的用户名username，进行模糊查询
     */
    ResponseResult selectBookingRecordLikeUsername(String username);




    /**
     * 根据预约时间升序查询 所有的预约记录
     */
    ResponseResult AscSelectAllByTime();

    /**
     * 根据预约时间降序查询 所有的预约记录
     */
    ResponseResult DescSelectAllByTime();


    /**
     * 查询所有疫苗预约记录
     */
    ResponseResult selectAllBookingRecord();

}
